﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Workflow2211A.Consol.Steps;
using WorkflowCore.Interface;

namespace Workflow2211A.Consol.Workflows
{
    /// <summary>
    /// 第一个工作流
    /// </summary>
    public class HelloWorldWorkflow : IWorkflow
    {
        //没有Set访问器的属性，叫只读属性
        //nameof()作用是获取类型 HelloWorldWorkflow 的简单名称 将他变为字符串
        public string Id => nameof(HelloWorldWorkflow);//标识这个工作流（跟数据库主键不是同一个概念）

        public int Version => 1;//工作流的版本号

        public void Build(IWorkflowBuilder<object> builder)
        {
            //设计流程执行步骤
            builder
                .StartWith<StartStep>()//启动步骤
                .Then<HelloWorldStep>()//步骤1
                .Then<EndStep>();//结束步骤
        }
    }
}
